import wepy from 'wepy'

export default class extends wepy.mixin {
  data = {
    shopCarList: []
  }

  onLoad() {
    // 获取本地carlist数据
    this.shopCarList = this.$parent.globalData.cart
  }

  methods = {
    onChangeNum(e) {
      console.log(e)
      // 调用全局更改数量方法
      this.$parent.updateGoodsCount(e)
    },
    // 删除商品
    onDeleteGoods(id) {
      this.$parent.deleteGoodsItem(id)
    },
    // 更改商品状态
    onChangeStatus(e) {
      this.$parent.updateGoodsStatus(e)
    },
    // 改变全选状态
    changeAllSelect(e) {
      this.$parent.updateAllGoodsSelect(e.detail)
    },
    // 提交订单
    toSubmitOrder() {
      // 对商品价格进行验证
      if (this.goodsPrice <= 0) {
        return wepy.baseToast('商品价格不能为0')
      }
      wepy.navigateTo({ url: '/pages/order' })
    }
  }

  computed = {
    // 判断carlist是否为空
    isEmpty() {
      if (this.shopCarList.length <= 0) {
        return true
      }
      return false
    },
    // 总价
    goodsPrice() {
      let price = 0
      this.shopCarList.forEach(x => {
        if (x.isCheck) {
          price += x.count * x.price
        }
      })
      return price * 100
    },
    // 全选框的状态
    isAllChecked() {
      // 全部商品的个数
      const allGoodsLength = this.shopCarList.length
      // 状态为true的商品的个数
      const isCheckedLength = this.shopCarList.filter(x => {
        return x.isCheck === true
      }).length
      // 如果全部选中为true否则为false
      if (allGoodsLength !== isCheckedLength) {
        return false
      }
      return true
    }
  }
}
